Dynamic Storage Tiering (DST) is the concept of grouping storage devices into tiers based on their characteristics, and relocating data dynamically to leverage specific capabilities of the underlying devices. This requires that the data is classified in some way that lets the DST mechanism place a particular data element in its “optimal” tier. The concept of DST may be applied to several different Quality of Service (QoS) attributes of a storage tier; an exemplary attribute may be performance management. For performance management, the DST objective is to identify data that has a high activity level (also called load) and place it in high performing storage tiers. The utilization of high performing storage tiers should be as high as possible as these are generally more expensive than the lower performing storage tiers and a high utilization of the more expensive storage devices provides a better return on investment for the user.
It is equally important to detect when the activity level changes from high to low and move the data back to lower performing storage tiers, so it does not take up capacity in the higher performance storage pools that may be used by more active data. Automating the movement of data with higher activity levels to higher performing storage tiers and data with lower activity levels to lower performing storage tiers makes it much easier for the customer to get the most performance of the system without having to figure out what data has the highest activity and manually move that to higher performing storage tiers.
Certain DST systems may measure the load on an entire Logical Unit Number (LUN) and automatically move entire LUNs with a high activity level to higher performing storage pools. However, often the majority of the activity is really restricted to a few Logical Block Address (LBA) ranges in the LUN so this approach leads to lower utilization of the higher performance storage tier as most of it is occupied by LBA ranges that do not have a high activity level. In response to this problem, some approaches split the LBA ranges within a LUN into subsets called sub-LUNs and monitor the activity in the individual sub-LUNs and only move the most active sub-LUNs to the higher performing storage tiers and let the sub-LUNs with less activity remain in the lower performing storage tiers. Such techniques may be referred to as sub-LUN tiering. Sub-LUNs may be specified as an absolute size, for example 1 MB; or as a percentage of the LUN LBA range, for example 0.1% of the LUN.